\hypertarget{classcLinEqSys}{\section{c\-Lin\-Eq\-Sys$<$ T $>$ Class Template Reference}
\label{classcLinEqSys}\index{c\-Lin\-Eq\-Sys$<$ T $>$@{c\-Lin\-Eq\-Sys$<$ T $>$}}
}


{\ttfamily \#include $<$lineqsys.\-h$>$}



Collaboration diagram for c\-Lin\-Eq\-Sys$<$ T $>$\-:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=222pt]{classcLinEqSys__coll__graph}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classcLinEqSys_ab80e0ee1bf57383bd6b04c8e5878eeed}{{\bfseries c\-Lin\-Eq\-Sys} (const T $\ast$$\ast$elems, std\-::size\-\_\-t rows, std\-::size\-\_\-t cols)}\label{classcLinEqSys_ab80e0ee1bf57383bd6b04c8e5878eeed}

\item 
\hypertarget{classcLinEqSys_aee02a711deb23dfd1ce69bfaa06bd257}{{\bfseries c\-Lin\-Eq\-Sys} (bnu\-::matrix$<$ T $>$ \&mat)}\label{classcLinEqSys_aee02a711deb23dfd1ce69bfaa06bd257}

\item 
bnu\-::vector$<$ T $>$ \& \hyperlink{classcLinEqSys_a39978bcfd4366712d09e7eb54bb09cef}{Solve\-Unique} ()
\item 
bnu\-::vector$<$ T $>$ \hyperlink{classcLinEqSys_ad3d9edcf200c3256220054f5ee0fdaeb}{Solve\-Overdetermined} ()
\item 
bool \hyperlink{classcLinEqSys_a7144d697d601517aead8642f5956a9b0}{Solve\-Underdetermined} (std\-::vector$<$ T $>$ \&solution)
\end{DoxyCompactItemize}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classcLinEqSys_ac270e6753af6ee64fb101b2f487ea492}{bnu\-::matrix$<$ T $>$ {\bfseries m\-\_\-\-Coeff\-Matrix}}\label{classcLinEqSys_ac270e6753af6ee64fb101b2f487ea492}

\item 
\hypertarget{classcLinEqSys_ae6d53e781615a0819bc144adb2f35d77}{bnu\-::vector$<$ T $>$ {\bfseries m\-\_\-\-Constant\-Term\-Vec}}\label{classcLinEqSys_ae6d53e781615a0819bc144adb2f35d77}

\end{DoxyCompactItemize}


\subsection{Detailed Description}
\subsubsection*{template$<$typename T$>$class c\-Lin\-Eq\-Sys$<$ T $>$}

solves a system of linear equations given as an augmented matrix 

\subsection{Member Function Documentation}
\hypertarget{classcLinEqSys_ad3d9edcf200c3256220054f5ee0fdaeb}{\index{c\-Lin\-Eq\-Sys@{c\-Lin\-Eq\-Sys}!Solve\-Overdetermined@{Solve\-Overdetermined}}
\index{Solve\-Overdetermined@{Solve\-Overdetermined}!cLinEqSys@{c\-Lin\-Eq\-Sys}}
\subsubsection[{Solve\-Overdetermined}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ bnu\-::vector$<$T$>$ {\bf c\-Lin\-Eq\-Sys}$<$ T $>$\-::Solve\-Overdetermined (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classcLinEqSys_ad3d9edcf200c3256220054f5ee0fdaeb}
solve an overdetermined linear system by solving the least squares problem we get an approximate solution x = (trans(\-A) $\ast$ A)$^\wedge$-\/1 $\ast$ A $\ast$ y T\-O\-D\-O -- improve on complexity -\/ this is overkill \hypertarget{classcLinEqSys_a7144d697d601517aead8642f5956a9b0}{\index{c\-Lin\-Eq\-Sys@{c\-Lin\-Eq\-Sys}!Solve\-Underdetermined@{Solve\-Underdetermined}}
\index{Solve\-Underdetermined@{Solve\-Underdetermined}!cLinEqSys@{c\-Lin\-Eq\-Sys}}
\subsubsection[{Solve\-Underdetermined}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ bool {\bf c\-Lin\-Eq\-Sys}$<$ T $>$\-::Solve\-Underdetermined (
\begin{DoxyParamCaption}
\item[{std\-::vector$<$ T $>$ \&}]{solution}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classcLinEqSys_a7144d697d601517aead8642f5956a9b0}
solve an underdetermined linear system using Singular Value Decomposition \hypertarget{classcLinEqSys_a39978bcfd4366712d09e7eb54bb09cef}{\index{c\-Lin\-Eq\-Sys@{c\-Lin\-Eq\-Sys}!Solve\-Unique@{Solve\-Unique}}
\index{Solve\-Unique@{Solve\-Unique}!cLinEqSys@{c\-Lin\-Eq\-Sys}}
\subsubsection[{Solve\-Unique}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ bnu\-::vector$<$T$>$\& {\bf c\-Lin\-Eq\-Sys}$<$ T $>$\-::Solve\-Unique (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{classcLinEqSys_a39978bcfd4366712d09e7eb54bb09cef}
solve the linear system when there is a unique solution uses L\-U\-P factorization followed by back substitution 

The documentation for this class was generated from the following file\-:\begin{DoxyCompactItemize}
\item 
lineqsys.\-h\end{DoxyCompactItemize}
